package com.ruoyi.tb.lmt.domain.bo;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 检修工作业务对象 tb_lmtrepair_workdetail
 *
 * @author ruoyi
 * @date 2023-12-14
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class TbLmtrepairWorkdetailBo extends BaseEntity {

    /**
     * ID
     */
    @NotNull(message = "ID不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 检修Id
     */
    @NotNull(message = "检修Id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long lmtRepairId;

    /**
     * 派发人员
     */
    private String sendUser;

    /**
     * 派发时间
     */
    private Date sendDate;

    /**
     * 检修类别
     */
    private String workKind;

    /**
     * 检修分类
     */
    private String workCategory;

    /**
     * 检修分类ID
     */
    private Long workCategoryId;

    /**
     * 部件名称
     */
    private String equipmentName;

    /**
     * 部件id
     */
    private Long equipmentId;

    /**
     * 材料名称
     */
    private String workDirectName;

    /**
     * 材料地址
     */
    private String workDirectUrl;

    /**
     * 是否更换发动机
     */
    private Long iszdf;

    /**
     *
     */
    private Long ists;

    /**
     * 是否必检
     */
    private Long ismustcheck;

    /**
     * 任务分类
     */
    private String workType;

    /**
     * 顺序
     */
    private Long orderNo;

    /**
     * 检修轮数
     */
    private String workTimes;

    /**
     * 检修内容
     */
    private String workName;

    /**
     * 检修技术要求
     */
    private String workRequire;

    /**
     * 要求开始时间
     */
    private Date startRequireDate;

    /**
     * 检修开始时间
     */
    private Date startTime;

    /**
     * 检修完成时间
     */
    private Date endTime;

    /**
     * 修理方式
     */
    private String workMethod;

    /**
     * 完成情况
     */
    private String workResult;

    /**
     * 撤销原因
     */
    private String undoReason;

    /**
     * 预计工时
     */
    private Long workHours;

    /**
     * 预计工作人数
     */
    private Long workUserCount;

    /**
     * 实际工时
     */
    private Long actWorkHours;

    /**
     * 实际工作人数
     */
    private Long actWorkUserCount;

    /**
     * 主修工队
     */
    private String workGroup;

    /**
     * 辅修工队
     */
    private String workGroup2;

    /**
     * 主修人
     */
    private String workUser;

    /**
     * 辅修人
     */
    private String workUser2;

    /**
     * 工队检查人
     */
    private String checkUser;

    /**
     * 工队检查时间
     */
    private Date checkTime;

    /**
     * 工队检查备注
     */
    private String checkRemark;

    /**
     * 车间检查结果
     */
    private String checkResult1;

    /**
     * 车间验收人
     */
    private String checkUser1;

    /**
     * 车间验收时间
     */
    private Date checkTime1;

    /**
     * 锻验结果
     */
    private String checkResult2;

    /**
     * 段验人
     */
    private String checkUser2;

    /**
     * 段验时间
     */
    private Date checkTime2;

    /**
     * 局验结果
     */
    private String checkResult3;

    /**
     * 局验人
     */
    private String checkUser3;

    /**
     * 局验时间
     */
    private Date checkTime3;

    /**
     * 状态
     */
    private String status;

    /**
     * 备注
     */
    private String remark;

    /**
     * 检修工作模版id
     */
    private Long workTemplateId;

    /**
     *
     */
    private Long jT28WorkId;

    /**
     * 派发给工作人时间
     */
    private Date sendToUserTime;

    /**
     * 派发给工作人
     */
    private String sendToUserName;

    /**
     * 必检标识2
     */
    private Long ismustcheck2;

    /**
     * 必检标识3
     */
    private Long ismustcheck3;

    /**
     * 前期工作索引
     */
    private String preWorkIndex;

    /**
     * 检查主题

检查主题
     */
    private String inspectionTopic;

    /**
     *
     */
    private Long flgZx;

    /**
     *
     */
    private Long flgFx;

    /**
     *
     */
    private String checkUserFx;

    /**
     *
     */
    private Date checkTimeFx;

    /**
     *
     */
    private String checkRemarkFx;

    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String fillData;
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String formConfig;
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String printConfig;
    private String repairStation;



    private Long    workGroupId;

    private Long workGroup2Id;

    private String isTestBed;

    private String legacyIssues;

    private String legacyIssuesData;

    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Integer legacyIssuesStatus;

    private String legacyIssuesSolution;

    private String legacyIssuesRemark;

    /**
     * 预检临修图片地址
     */
    private String taskUrl;

    //提料物资编号
    private String legacyIssuesMaterial;
    //提料物资数量
    private String legacyIssuesNumber;

    //申请验收的url
    private String acceptanceUrl;

    //提料url
    private String pickupUrl;

    //验收问题id
    private Long acceptanceId;

    //表单状态
    private String jsonStatus;
}
